
/* CodeMirror */

.CodeMirror {
	/* Set height, width, borders, and global font properties here */
	font-family: monospace;
	height: 300px;
	color: black;
	direction: ltr;
}

/* PADDING */

.CodeMirror-lines {
	padding: 4px 0; /* Vertical padding around content */
}
.CodeMirror pre {
	padding: 0 4px; /* Horizontal padding of content */
}

.CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {
	background-color: white; /* The little square between H and V scrollbars */
}

/* GUTTER */

.CodeMirror-gutters {
	border-right: 1px solid #ddd;
	background-color: #f7f7f7;
	white-space: nowrap;
}
.CodeMirror-linenumbers {}
.CodeMirror-linenumber {
	padding: 0 3px 0 5px;
	min-width: 20px;
	text-align: right;
	color: #999;
	white-space: nowrap;
}

.CodeMirror-guttermarker { color: black; }
.CodeMirror-guttermarker-subtle { color: #999; }

/* CURSOR */

.CodeMirror-cursor {
	border-left: 1px solid black;
	border-right: none;
	width: 0;
}
/* Shown when moving in bi-directional text */
.CodeMirror div.CodeMirror-secondarycursor {
	border-left: 1px solid silver;
}
.cm-fat-cursor .CodeMirror-cursor {
	width: auto;
	border: 0 !important;
	background: #7e7;
}
.cm-fat-cursor div.CodeMirror-cursors {
	z-index: 1;
}
.cm-fat-cursor-mark {
	background-color: rgba(20, 255, 20, 0.5);
	animation: blink 1.06s steps(1) infinite;
}
.cm-animate-fat-cursor {
	width: auto;
	border: 0;
	animation: blink 1.06s steps(1) infinite;
	background-color: #7e7;
}
@keyframes blink {
	0% {}
	50% { background-color: transparent; }
	100% {}
}

/* Can style cursor different in overwrite (non-insert) mode */
.CodeMirror-overwrite .CodeMirror-cursor {}

.cm-tab { display: inline-block; text-decoration: inherit; }

.CodeMirror-rulers {
	position: absolute;
	left: 0; right: 0; top: -50px; bottom: -20px;
	overflow: hidden;
}
.CodeMirror-ruler {
	border-left: 1px solid #ccc;
	top: 0; bottom: 0;
	position: absolute;
}

/* DEFAULT THEME */

.cm-s-default .cm-header {color: blue;}
.cm-s-default .cm-quote {color: #090;}
.cm-negative {color: #d44;}
.cm-positive {color: #292;}
.cm-header, .cm-strong {font-weight: bold;}
.cm-em {font-style: italic;}
.cm-link {text-decoration: underline;}
.cm-strikethrough {text-decoration: line-through;}

.cm-s-default .cm-keyword {color: #708;}
.cm-s-default .cm-atom {color: #219;}
.cm-s-default .cm-number {color: #164;}
.cm-s-default .cm-def {color: #00f;}
.cm-s-default .cm-variable,
.cm-s-default .cm-punctuation,
.cm-s-default .cm-property,
.cm-s-default .cm-operator {}
.cm-s-default .cm-variable-2 {color: #05a;}
.cm-s-default .cm-variable-3, .cm-s-default .cm-type {color: #085;}
.cm-s-default .cm-comment {color: #a50;}
.cm-s-default .cm-string {color: #a11;}
.cm-s-default .cm-string-2 {color: #f50;}
.cm-s-default .cm-meta {color: #555;}
.cm-s-default .cm-qualifier {color: #555;}
.cm-s-default .cm-builtin {color: #30a;}
.cm-s-default .cm-bracket {color: #997;}
.cm-s-default .cm-tag {color: #170;}
.cm-s-default .cm-attribute {color: #00c;}
.cm-s-default .cm-hr {color: #999;}
.cm-s-default .cm-link {color: #00c;}

.cm-s-default .cm-error {color: #f00;}
.cm-invalidchar {color: #f00;}

.CodeMirror-composing { border-bottom: 2px solid; }

/* Default styles for common addons */

div.CodeMirror span.CodeMirror-matchingbracket {color: #0b0;}
div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #a22;}
.CodeMirror-matchingtag { background: rgba(255, 150, 0, .3); }
.CodeMirror-activeline-background {background: #e8f2ff;}

/* STOP */

/* The rest of this file contains styles related to the mechanics of
   the editor. You probably shouldn't touch them. */

.CodeMirror {
	position: relative;
	overflow: hidden;
	background: white;
}

.CodeMirror-scroll {
	overflow: scroll !important; /* Things will break if this is overridden */
	/* 30px is the magic margin used to hide the element's real scrollbars */
	/* See overflow: hidden in .CodeMirror */
	margin-bottom: -30px; margin-right: -30px;
	padding-bottom: 30px;
	height: 100%;
	outline: none; /* Prevent dragging from highlighting the element */
	position: relative;
}
.CodeMirror-sizer {
	position: relative;
	border-right: 30px solid transparent;
}

/* The fake, visible scrollbars. Used to force redraw during scrolling
   before actual scrolling happens, thus preventing shaking and
   flickering artifacts. */
.CodeMirror-vscrollbar, .CodeMirror-hscrollbar, .CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {
	position: absolute;
	z-index: 6;
	display: none;
}
.CodeMirror-vscrollbar {
	right: 0; top: 0;
	overflow-x: hidden;
	overflow-y: scroll;
}
.CodeMirror-hscrollbar {
	bottom: 0; left: 0;
	overflow-y: hidden;
	overflow-x: scroll;
}
.CodeMirror-scrollbar-filler {
	right: 0; bottom: 0;
}
.CodeMirror-gutter-filler {
	left: 0; bottom: 0;
}

.CodeMirror-gutters {
	position: absolute; left: 0; top: 0;
	min-height: 100%;
	z-index: 3;
}
.CodeMirror-gutter {
	white-space: normal;
	height: 100%;
	display: inline-block;
	vertical-align: top;
	margin-bottom: -30px;
}
.CodeMirror-gutter-wrapper {
	position: absolute;
	z-index: 4;
	background: none !important;
	border: none !important;
}
.CodeMirror-gutter-background {
	position: absolute;
	top: 0; bottom: 0;
	z-index: 4;
}
.CodeMirror-gutter-elt {
	position: absolute;
	cursor: default;
	z-index: 4;
}
.CodeMirror-gutter-wrapper ::selection { background-color: transparent }

.CodeMirror-lines {
	cursor: text;
	min-height: 1px; /* prevents collapsing before first draw */
}
.CodeMirror pre {
	/* Reset some styles that the rest of the page might have set */
	border-radius: 0;
	border-width: 0;
	background: transparent;
	font-family: inherit;
	font-size: inherit;
	margin: 0;
	white-space: pre;
	word-wrap: normal;
	line-height: inherit;
	color: inherit;
	z-index: 2;
	position: relative;
	overflow: visible;
	font-variant-ligatures: contextual;
}
.CodeMirror-wrap pre {
	word-wrap: break-word;
	white-space: pre-wrap;
	word-break: normal;
}

.CodeMirror-linebackground {
	position: absolute;
	left: 0; right: 0; top: 0; bottom: 0;
	z-index: 0;
}

.CodeMirror-linewidget {
	position: relative;
	z-index: 2;
	padding: 0.1px; /* Force widget margins to stay inside of the container */
}

.CodeMirror-widget {}

.CodeMirror-rtl pre { direction: rtl; }

.CodeMirror-code {
	outline: none;
}

/* Force content-box sizing for the elements where we expect it */
.CodeMirror-scroll,
.CodeMirror-sizer,
.CodeMirror-gutter,
.CodeMirror-gutters,
.CodeMirror-linenumber {
	box-sizing: content-box;
}

.CodeMirror-measure {
	position: absolute;
	width: 100%;
	height: 0;
	overflow: hidden;
	visibility: hidden;
}

.CodeMirror-cursor {
	position: absolute;
	pointer-events: none;
}
.CodeMirror-measure pre { position: static; }

div.CodeMirror-cursors {
	visibility: hidden;
	position: relative;
	z-index: 3;
}
div.CodeMirror-dragcursors {
	visibility: visible;
}

.CodeMirror-focused div.CodeMirror-cursors {
	visibility: visible;
}

.CodeMirror-selected { background: #d9d9d9; }
.CodeMirror-focused .CodeMirror-selected { background: #d7d4f0; }
.CodeMirror-crosshair { cursor: crosshair; }
.CodeMirror-line::selection, .CodeMirror-line > span::selection, .CodeMirror-line > span > span::selection { background: #d7d4f0; }

.cm-searching {
	background-color: #ffa;
	background-color: rgba(255, 255, 0, .4);
}

/* Used to force a border model for a node */
.cm-force-border { padding-right: .1px; }

@media print {
	/* Hide the cursor when printing */
	.CodeMirror div.CodeMirror-cursors {
		visibility: hidden;
	}
}

/* See issue #2901 */
.cm-tab-wrap-hack:after { content: ''; }

/* Help users use markselection to safely style text background */
span.CodeMirror-selectedtext { background: none; }

/* icons */
@font-face {font-family: "iconfont";
	src: url('font/iconfont.eot?t=1544503221684'); /* IE9*/
	src: url('font/iconfont.eot?t=1544503221684#iefix') format('embedded-opentype'), /* IE6-IE8 */
	url('data:application/x-font-woff;charset=utf-8;base64,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') format('woff'),
	url('font/iconfont.ttf?t=1544503221684') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
	url('font/iconfont.svg?t=1544503221684#iconfont') format('svg'); /* iOS 4.1- */
}

[class*=ke-icon-] {
	font-family:"iconfont" !important;
	font-size:20px;
	font-style:normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	width: 20px;
	height: 20px;
	line-height: 20px;

}

.ke-icon-justifycenter:before { content: "\e610"; }

.ke-icon-div:before { content: "\e65a"; }

.ke-icon-audio:before { content: "\e638"; }

.ke-icon-baidumap:before { content: "\e641"; }

.ke-icon-map:before { content: "\e644"; }

.ke-icon-about:before { content: "\e61e"; }

.ke-icon-outdent:before { content: "\e66b"; }

.ke-icon-formatblock:before { content: "\e666"; }

.ke-icon-underline:before { content: "\e648"; }

.ke-icon-removeformat:before { content: "\e6b8"; }

.ke-icon-fontname:before { content: "\e625"; }

.ke-icon-plainpaste:before { content: "\e6ef"; }

.ke-icon-bold:before { content: "\e6a2"; }

.ke-icon-checked:before { content: "\e613"; }

.ke-icon-selectall:before { content: "\e619"; }

.ke-icon-italic:before { content: "\e611"; }

.ke-icon-flash:before { content: "\e68f"; }

.ke-icon-table:before { content: "\e701"; }

.ke-icon-lineheight:before { content: "\e605"; }

.ke-icon-cut:before { content: "\e612"; }

.ke-icon-indent:before { content: "\e61c"; }

.ke-icon-clearhtml:before { content: "\e656"; }

.ke-icon-hilitecolor:before { content: "\e81f"; }

.ke-icon-code:before { content: "\e8ad"; }

.ke-icon-media:before { content: "\e741"; }

.ke-icon-forecolor:before { content: "\e639"; }

.ke-icon-wordpaste:before { content: "\e66c"; }

.ke-icon-subscript:before { content: "\e671"; }

.ke-icon-superscript:before { content: "\e672"; }

.ke-icon-strikethrough:before { content: "\e609"; }

.ke-icon-date:before { content: "\e633"; }

.ke-icon-redo:before { content: "\e64f"; }

.ke-icon-undo:before { content: "\e650"; }

.ke-icon-fullscreen:before { content: "\e62c"; }

.ke-icon-print:before { content: "\e60e"; }

.ke-icon-image:before { content: "\e6db"; }

.ke-icon-justifyleft:before { content: "\e60a"; }

.ke-icon-justifyright:before { content: "\e60b"; }

.ke-icon-template:before { content: "\e62a"; }

.ke-icon-search:before { content: "\e71c"; }

.ke-icon-justifyfull:before { content: "\e617"; }

.ke-icon-link:before { content: "\e690"; }

.ke-icon-insertfile:before { content: "\e647"; }

.ke-icon-multiupload:before { content: "\e634"; }

.ke-icon-anchor:before { content: "\e63b"; }

.ke-icon-copy:before { content: "\e643"; }

.ke-icon-time:before { content: "\e60d"; }

.ke-icon-insertorderedlist:before { content: "\e603"; }

.ke-icon-fontsize:before { content: "\e6c7"; }

.ke-icon-hr:before { content: "\e64a"; }

.ke-icon-emoticons:before { content: "\e63c"; }

.ke-icon-quickformat:before { content: "\e60c"; }

.ke-icon-paste:before { content: "\e655"; }

.ke-icon-pagebreak:before { content: "\e91b"; }

.ke-icon-source:before { content: "\e60f"; }

.ke-icon-preview:before { content: "\e62d"; }

.ke-icon-new:before { content: "\e606"; }

.ke-icon-unlink:before { content: "\e608"; }

.ke-icon-video:before { content: "\e9f1"; }

.ke-icon-insertunorderedlist:before { content: "\e63a"; }

.ke-icon-specialchar:before { content: "\e665"; }

.ke-icon-formula:before { content: "\e7bc"; }

.ke-icon-xiumi:before { content: "\e6c8"; }

.ke-icon-remoteimg:before { content: "\e69f"; }

/* common */
.ke-inline-block {
	display: inline-block;
	vertical-align: middle;
	
	
}
.ke-clearfix {
	
	&:after {
		content: ".";
		display: block;
		clear: both;
		font-size: 0;
		height: 0;
		line-height: 0;
		visibility: hidden;
	}
}
.ke-shadow {
	background-color: #fff;
}
.ke-menu a,
.ke-menu a:hover,
.ke-dialog a,
.ke-dialog a:hover {
	color: #337fe5;
	text-decoration: none;
}
/* container */
.ke-container {
	display: block;
	border: 1px solid #ddd;
	background-color: #fff;
	overflow: hidden;
	margin: 0;
	padding: 0;
}
/* toolbar */
.ke-toolbar {
	border-bottom: 1px solid #ddd;
	background-color: #f8f8f8;
	padding: 10px;
	text-align: left;
	overflow: hidden;
	
	.ke-outline {
		margin: 5px;
		font-size: 0;
		line-height: 0;
		overflow: hidden;
		cursor: pointer;
		display: block;
		float: left;
	}
	.ke-on {
		color: #000;
		.ke-toolbar-icon {
			color: #000;
		}
	}
	.ke-selected {
		color: #000;
	}
	.ke-disabled {
		cursor: default;
	}
	.ke-separator {
		height: 20px;
		margin: 5px;
		border-left: 1px solid #ddd;
		border-top: 0;
		border-bottom: 0;
		width: 0;
		font-size: 0;
		line-height: 0;
		overflow: hidden;
		display: block;
		float: left;
	}
	.ke-hr {
		overflow: hidden;
		height: 10px;
		clear: both;
	}
}
.ke-toolbar-icon {
	overflow: hidden;
	display: block;
	color: #666;
}
.ke-toolbar-icon-url {
}
/* edit */
.ke-edit {
	padding: 0;
}
.ke-edit-iframe,
.ke-edit-textarea {
	border: 0;
	margin: 0;
	padding: 0;
	overflow: auto;
}
.ke-edit-textarea {
	font-size: 1.4px;
	font-family: Roboto, system-ui,PingFang SC,STHeiti,sans-serif;
	color: #000;
	overflow: auto;
	resize: none;
	&:focus {
		outline: none;
	}
}
/* statusbar */
.ke-statusbar {
	position: relative;
	background-color: #f8f8f8;
	border-top: 1px solid #cccccc;
	overflow: hidden;
}
.ke-statusbar-content {
	padding: 5px 10px;
	display: block;
	font-size: 12px;
	float: none;
	span {
		color: #666;
		margin-right: 10px;
	}
	a {
		color: #5187e2;
		text-decoration: none;
	}
}
.ke-statusbar-left {
	float: left;
	text-align: left;
}
.ke-statusbar-right {
	float: right;
	text-align: right;
}
.ke-statusbar-right-icon {
	position: absolute;
	right: 2px;
	bottom: 2px;
	cursor: se-resize;
	width: 0;
	height: 0;
	overflow: hidden;
	border-width: 10px 10px 0 0;
	border-color: transparent #bcbcbc transparent transparent;
	border-style: dashed solid dashed dashed;
	font-size: 0;
	vertical-align: bottom;
	margin-top: 6px;
	margin-bottom: 2px;
}
/* menu */
.ke-menu {
	background-color: #fff;
	color: #333;
	font-family: Roboto, system-ui,PingFang SC,STHeiti,sans-serif;
	font-size: 14px;
	text-align: left;
	overflow: hidden;
	border: 1px solid #ddd;
}
.ke-menu-item {
	background-color: #fff;
	color: #222222;
	height: 30px;
	line-height: 1.8;
	overflow: hidden;
	cursor: pointer;
}
.ke-menu-item-on {
	background-color: #4087e9;
	color: #fff;
}
.ke-menu-item-left {
	width: 27px;
	text-align: center;
	overflow: hidden;
}
.ke-menu-item-center {
	width: 0;
	height: 30px;
	border-left: 1px solid #e3e3e3;
	border-right: 1px solid #ffffff;
	border-top: 0;
	border-bottom: 0;
}
.ke-menu-item-center-on {
	border-left: 1px solid #e9eff6;
	border-right: 1px solid #e9eff6;
}
.ke-menu-item-right {
	border: 0;
	padding: 0 0 0 5px;
	line-height: 24px;
	text-align: left;
	overflow: hidden;
}
.ke-menu-separator {
	margin: 2px 0;
	height: 0;
	overflow: hidden;
	border-top: 1px solid #cccccc;
	border-bottom: 1px solid #ffffff;
	border-left: 0;
	border-right: 0;
}
.ke-content {
	font-size: 14px;
	line-height: 1.6;
}
/* colorpicker */
.ke-colorpicker {
	box-shadow: 0 0 5px #ccc;
	background: #fff;
	color: #222222;
	padding: 2px;
}
.ke-colorpicker-table {
	border: 0;
	margin: 0;
	padding: 0;
	border-collapse: separate;
}
.ke-colorpicker-cell {
	font-size: 0;
	line-height: 0;
	border: 1px solid #fff;
	cursor: pointer;
	margin: 5px;
	padding: 0;
}
.ke-colorpicker-cell-top {
	font-family: "sans serif",tahoma,verdana,helvetica;
	font-size: 14px;
	line-height: 24px;
	border: 1px solid #f8f8f8;
	cursor: pointer;
	margin: 0;
	padding: 0;
	text-align: center;
}
.ke-colorpicker-cell-on {
	border: 1px solid #5690d2;
}
.ke-colorpicker-cell-selected {
	border: 1px solid #2446ab;
}
.ke-colorpicker-cell-color {
	width: 20px;
	height: 20px;
	margin: 2px;
	padding: 0;
	border: 0;
}
/* dialog */
.ke-dialog {
	position: fixed;
	margin: 0;
	padding: 0;
	* {
		box-sizing: border-box;
	}
	.ke-header {
		width: 100%;
		margin-bottom: 10px;
		font-size: 14px;
		line-height: 30px;
	}
}
.ke-dialog-content {
	background-color: #fff;
	width: 100%;
	height: 100%;
	color: #333;
	border: 1px solid #ddd;
}
.ke-dialog-shadow {
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	box-shadow: 0 5px 15px rgba(0,0,0,0.08);
	background-color: #f8f8f8;
}
.ke-dialog-header {
	border: 0;
	margin: 0;
	padding: 0 15px;
	background: #fff;
	border-bottom: 1px solid #ddd;
	height: 45px;
	font: 16px/45px "sans serif",tahoma,verdana,helvetica;
	text-align: left;
	color: #222;
	cursor: move;
}
.ke-dialog-icon-close {
	display: block;
	width: 20px;
	height: 20px;
	position: absolute;
	right: 10px;
	top: 0px;
	cursor: pointer;
	text-align: center;
	&:after {
		content: "\00d7";
	}
}
.ke-dialog-body {
	text-align: left;
	overflow: hidden;
	width: 100%;
	font-size: 14px;
	img {
		vertical-align: middle;
	}
}


.ke-form {
	margin: 0;
	padding: 20px;
	font-size: 14px;
	* {
		box-sizing: border-box;
	}
}

.ke-form-group {
	margin-bottom: 10px;
}

.ke-form-label {
	width: 70px;
	float: left;
	margin-top: 5px;

}

.ke-form-controls {
	margin-left: 80px;
	line-height: 30px;
	> * {
		margin-right: 5px;
		&:last-child {
			margin-right: 0;
		}
	}
}

.ke-form-help {
	border: 1px solid #92bdec;
	background: rgb(226, 246, 255);
	margin-bottom: 20px;
	padding: 5px;
	color: #1b7dc5;
}

.ke-textarea {
	border: 1px solid #e5e5e5;
	background: #fff;
	overflow-x: hidden;
	resize:none;
}

.ke-input {
	box-sizing: border-box;
	border: 1px solid #e5e5e5;
	background: #fff;
	height: 30px;
	padding: 5px 10px;
	max-width: 100%;
	width: 100%;
	font-size: 14px;
}
.ke-select {
	border-radius: 0;
	display: block;
	border: 1px solid #e5e5e5;
	background: #fff;
	height: 30px;
	padding: 5px 10px;
	max-width: 100%;
	width: 100%;
	font-size: 14px;
	padding-right: 15px;
}
.ke-checkbox {
	vertical-align: middle;
	margin-top: 8px;
}

.ke-flex {
	display: flex;
	white-space:nowrap;
}

.ke-flex-auto {
	flex: 1;

}

.ke-margin-right {
	margin-right: 5px;
}

.ke-margin-left {
	margin-left: 5px;
}
.ke-margin-top {
	margin-top: 5px;
}

.ke-dialog-body textarea:focus,
.ke-dialog-body input:focus,
.ke-dialog-body select:focus {
	outline: none;
}
.ke-dialog-loading {
	position: absolute;
	top: 0;
	left: 1px;
	z-index: 1;
	text-align: center;
}
.ke-dialog-loading-content {
	background: url("../common/loading.gif") no-repeat;
	color: #666;
	font-size: 14px;
	font-weight: bold;
	height: 31px;
	line-height: 31px;
	padding-left: 36px;
}

.ke-dialog-footer {
	font: 14px/1 "sans serif",tahoma,verdana,helvetica;
	text-align: right;
	padding: 10px 0;
	border-top: 1px solid #ddd;
	background-color: #fff;
	width: 100%;
}
.ke-dialog-preview,
.ke-dialog-yes {
	margin: 5px;
}
.ke-dialog-no {
	margin: 5px 10px 5px 5px;
}
.ke-dialog-mask {
	background-color: #fff;
	opacity: 0.5;
}
.ke-button {
	box-sizing: border-box;
	padding: 0 15px;
	height: 30px;
	line-height: 30px;
	color: #333;
	font-size: 14px;
	text-decoration: none;
	border: 1px solid #ddd;
	background: #fff;
}
/* inputbox */
.ke-color {
	box-sizing: border-box;
	border: 1px solid #ddd;
	background-color: #ffffff;
	font-size: 14px;
	height: 30px;
	line-height: 30px;
	padding: 0 5px;
	overflow: hidden;
	cursor: pointer;
	display: block;
	vertical-align: middle;
}
.ke-upload-button {
	position: relative;
}
.ke-upload-area {
	display: inline-block;
	position: relative;
	max-width: 100%;
	vertical-align: middle;
	.ke-upload-file {
		font-size: 500px;
		overflow: hidden;
		position: absolute;
		top: 0;
		z-index: 1;
		width: 100%;
		height: 100%;
		left: 0;
		-webkit-appearance: none;
		opacity: 0;
		cursor: pointer;
	}
}
/* tabs */
.ke-tabs {
	font: 14px/1 "sans serif",tahoma,verdana,helvetica;
	border-bottom: 1px solid #ddd;
	padding-left: 10px;
}
.ke-tabs-ul {
	list-style-image: none;
	list-style-position: outside;
	list-style-type: none;
	margin: 0;
	padding: 0;
}
.ke-tabs-li {
	position: relative;
	border: 1px solid #ddd;
	background-color: #f8f8f8;
	margin: 0 5px -1px 0;
	padding: 3px 20px;
	float: left;
	line-height: 25px;
	text-align: center;
	color: #555555;
	cursor: pointer;
}
.ke-tabs-li-selected {
	background-color: #fff;
	border-bottom: 1px solid #fff;
	color: #000;
	cursor: default;
}
.ke-tabs-li-on {
	background-color: #fff;
	color: #000;
}
/* progressbar */
.ke-progressbar {
	position: relative;
	margin: 0;
	padding: 0;
}
.ke-progressbar-bar {
	border: 1px solid #6fa5db;
	width: 80px;
	height: 5px;
	margin: 10px 10px 0 10px;
	padding: 0;
}
.ke-progressbar-bar-inner {
	width: 0;
	height: 5px;
	background-color: #6fa5db;
	overflow: hidden;
	margin: 0;
	padding: 0;
}
.ke-progressbar-percent {
	position: absolute;
	top: 0;
	left: 40%;
	display: none;
}
/* plupload */
.ke-plupload-top {
	position: relative;
	padding: 10px;
  font-size: 14px;
  line-height: 30px;
}
.ke-plupload-desc {
	padding: 0 10px;
}
.ke-plupload-body {
	overflow: scroll;
	background-color: #ffffff;
	border: none;
	border-top: 1px solid #ddd;
	width: auto;
	height: 370px;
	padding: 5px;
    font-size: 12px;
	.ke-item {
		width: 95px;
		margin: 5px;
	}
	.ke-photo {
		position: relative;
		border: 1px solid #dddddd;
		background-color: #ffffff;
		padding: 5px;
	}
	.ke-delete {
		display: block;
		background: url(default.png) no-repeat scroll 0px -688px;
		width: 16px;
		height: 16px;
		position: absolute;
		right: 0;
		top: 0;
		cursor: pointer;
	}
	.ke-status {
		position: absolute;
		left: 0;
		bottom: 5px;
		width: 100px;
		height: 17px;
	}
	.ke-message {
		width: 100px;
		text-align: center;
		overflow: hidden;
		height: 17px;
	}
	.ke-error {
		color: red;
	}
	.ke-name {
		width: 100px;
		text-align: center;
		overflow: hidden;
		height: 16px;
	}
	.ke-on {
		border: 1px solid #5690d2;
		background-color: #e9eff6;
	}
}
/* emoticons */
.ke-plugin-emoticons {
	position: relative;
	.ke-preview {
		position: absolute;
		text-align: center;
		margin: 2px;
		padding: 10px;
		top: 0;
		border: 1px solid #a0a0a0;
		background-color: #ffffff;
		display: none;
	}
	.ke-preview-img {
		border: 0;
		margin: 0;
		padding: 0;
	}
	.ke-table {
		border: 0;
		margin: 0;
		padding: 0;
		border-collapse: separate;
	}
	.ke-cell {
		margin: 0;
		padding: 1px;
		border: 1px solid #f8f8f8;
		cursor: pointer;
	}
	.ke-on {
		border: 1px solid #5690d2;
		background-color: #e9eff6;
	}
	.ke-img {
		display: block;
		background-repeat: no-repeat;
		overflow: hidden;
		margin: 2px;
		width: 24px;
		height: 24px;
		margin: 0;
		padding: 0;
		border: 0;
	}
	.ke-page {
		text-align: right;
		margin: 5px;
		padding: 0;
		border: 0;
		font: 14px/1 "sans serif",tahoma,verdana,helvetica;
		color: #333;
		text-decoration: none;
	}
}
.ke-plugin-plainpaste-textarea,
.ke-plugin-wordpaste-iframe {
	display: block;
	width: 408px;
	height: 260px;
	font-family: "sans serif",tahoma,verdana,helvetica;
	font-size: 14px;
	border-color: #848484 #e0e0e0 #e0e0e0 #848484;
	border-style: solid;
	border-width: 1px;
}
/* filemanager */
.ke-plugin-filemanager-header {
	width: 100%;
	margin-bottom: 10px;
	.ke-left {
		float: left;
	}
	.ke-right {
		float: right;
	}
}
.ke-plugin-filemanager-body {
	overflow: scroll;
	background-color: #ffffff;
	border-color: #eee;
	border-style: solid;
	border-width: 1px;
	width: auto;
	height: 370px;
	padding: 5px;
	font-size: 12px;
	.ke-item {
		width: 95px;
		margin: 5px;
	}
	.ke-photo {
		border: 1px solid #dddddd;
		background-color: #ffffff;
		padding: 5px;
	}
	.ke-name {
		width: 100px;
		text-align: center;
		overflow: hidden;
		height: 16px;
	}
	.ke-on {
		border: 1px solid #5690d2;
		background-color: #e9eff6;
	}
	.ke-table {
		width: 95%;
		border: 0;
		margin: 0;
		padding: 0;
		border-collapse: separate;
		.ke-cell {
			margin: 0;
			padding: 0;
			border: 0;
		}
		.ke-name {
			width: 55%;
			text-align: left;
		}
		.ke-size {
			width: 15%;
			text-align: left;
		}
		.ke-datetime {
			width: 30%;
			text-align: center;
		}
	}
}
